<?php

include dirname(__FILE__).'/../bootstrap/unit_context.php';

$test = new lime_test(15, new lime_output_color());

new sfDatabaseManager($configuration);

$table = Doctrine::getTable('Carrera');

$carrera = new Carrera();

$rand = rand();

$carrera->denominacion = 'denominacion_test_' . $rand;
$carrera->slug = 'slug_test_' . $rand;
$carrera->seccion = Constantes::MATUTINA;
$carrera->duracion = 'duracion_test_' . $rand;
$carrera->denominacion_grado = 'grado_test_' . $rand;
$carrera->denominacion_titulo = 'titulo_test_' . $rand;
$carrera->modalidad = Constantes::PRESENCIAL;
$carrera->area_id = 1;
$carrera->nivel_id = 1;

$carrera->save();
$carrera_version = $table->getVersion($carrera->id, 1);

$test->ok($table->hasTemplate('Auditable'), 'Carrera es auditable');
$test->isnt($carrera->id, 0, 'La carrera ha sido guardada');
$test->is($carrera->version, 1, 'El numero de version de la carrera es 1');
$test->isnt($carrera_version, null, 'La version de la carrera ha sido creada');
$test->is($carrera->id, $carrera_version->id, 'Id corresponde');
$test->is($carrera->denominacion, $carrera_version->denominacion, 'Denominacion corresponde');
$test->is($carrera->slug, $carrera_version->slug, 'Slug corresponde');
$test->is($carrera->seccion, $carrera_version->seccion, 'Seccion corresponde');
$test->is($carrera->duracion, $carrera_version->duracion, 'Duracion corresponde');
$test->is($carrera->denominacion_grado, $carrera_version->denominacion_grado, 'Denominacion grado corresponde');
$test->is($carrera->denominacion_titulo, $carrera_version->denominacion_titulo, 'Denominacion titulo corresponde');
$test->is($carrera->modalidad, $carrera_version->modalidad, 'Modalidad corresponde');
$test->is($carrera->area_id, $carrera_version->area_id, 'Area id corresponde');
$test->is($carrera->nivel_id, $carrera_version->nivel_id, 'Nivel id corresponde');
$test->is($carrera->version, $carrera_version->version, 'Numero de version corresponde');
